package com.wootion.cims.module.systemsetting.user.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.Date;

/**
 * (Community)实体类
 *
 * @author makejava
 * @since 2022-09-19 17:32:28
 */
@Data
@TableName(value = "sys_user")
@ApiModel(value = "用户")
@Accessors(chain = true)
public class User implements Serializable {

    private static final long serialVersionUID = 821941936512283734L;
    
    @TableId(value = "id",type = IdType.ASSIGN_UUID)
    @ApiModelProperty(value = "用户id")
    private String id;

    @ApiModelProperty(value = "用户名")
    @NotBlank(message = "用户名不能为空")
    private String username;

    @ApiModelProperty(value = "手机号")
    private String tel;
    
    @NotBlank(message = "密码不能为空")
    @ApiModelProperty(value = "密码")
    private String password;

    @ApiModelProperty(value = "使用期限")
    private String useTime;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "状态")
    private Integer status;

    @ApiModelProperty(value = "是否可用")
    private Boolean enabled;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "创建时间")
    private Date updateTime;

    @ApiModelProperty(value = "创建人id")
    private Date createUserid;

    @ApiModelProperty(value = "更新人id")
    private Date updateUserid;

    @ApiModelProperty(value = "旧密码")
    private String oldPassword;

    @ApiModelProperty(value = "新密码")
    private String firstPassword;

    @ApiModelProperty(value = "")
    private Date startTime;

    @ApiModelProperty(value = "")
    private Date endTime;

    @ApiModelProperty(value = "账号状态")
    private String account;


    @ApiModelProperty(value = "上次修改密码的时间")
    private Date modifyPasswordTime;

    @ApiModelProperty(value = "删除时间")
    private Date deleteTime;
}

